<template>
	<div class="icons">
		<swiper :options="swiperOption" ref="mySwiper">
			<swiper-slide v-for="(page,index) of pages" :key="index">
				<div class="icon" v-for="item of page" :key="item.id">
					<div class="icon-img">
						<img class="icon-img-content" :src="item.imgUrl">
					</div>
					<p class="icon-desc">{{item.desc}}</p>
				</div>
			</swiper-slide>
			<div class="swiper-pagination"  slot="pagination"></div>
		</swiper>
	</div>
</template>

<script>
export default {
	name:'HomeIcons',
	props:{
        list:Array
    },
	data () {
		return{
			swiperOption: {
                pagination:'.swiper-pagination',
                autoplay:false
	        }
		}
	},
	computed:{
		pages () {
			const pages = []
			this.list.forEach((item,index)=>{
				const page = Math.floor(index/8);
				if(!pages[page]){
					pages[page]=[]
				}
				pages[page].push(item)
			})
			return pages
		}
	}
}
</script>

<style scoped lang="stylus">
@import '~styles/veribles.styl'
@import '~styles/mixins.styl'
.icons >>> .swiper-pagination-bullet
    background: rgba(144,144,144,0.8) !important;
    opacity:1 !important
.icons >>> .swiper-pagination-bullet-active
    background: rgba(0,175,190,.8) !important;  
.icons >>> .swiper-container
	height:0
	padding-bottom:58%
.icon
	overflow:hidden
	float:left
	width:25%
	height:0
	padding-bottom:25%
	position:relative
	.icon-img
		position:absolute
		top:0
		left:0
		right:0
		bottom:.44rem
		box-sizing:border-box
		padding:.16rem
		.icon-img-content
			display:block
			margin:0 auto
			height:100%
	.icon-desc
		position:absolute
		left:0
		right:0
		bottom:0
		height:.44rem
		line-height:.44rem
		text-align:center
		color:$darkTextcolor
		ellipsis()
			
</style>